В этой лабораторной работе вы настроите на сервере контейнер, который предоставляет службу базы данных MariaDB, сохраняет базу данных в постоянном хранилище и запускается автоматически вместе с сервером.
Результаты
Вы сможете:
создать отсоединенные контейнеры;
настроить перенаправление портов и постоянное хранилище;
настроить systemd на запуск контейнеров при запуске хост-машины.
systemd
Войдите на машину workstation как пользователь student с паролем student.
workstation
student
На машине workstation выполните команду lab containers-review start. Эта команда запускает подготовительный сценарий, который проверяет доступность машины serverb в сети. Он также устанавливает клиент MariaDB и создает учетную запись пользователя podsvc, которую вы будете использовать для запуска контейнера MariaDB.
lab containers-review start
serverb
podsvc
[student@workstation ~]$ lab containers-review start
[student@workstation ~]$
Процедура 13.6. Инструкции
На машине serverb установите контейнерные утилиты. Войдите на машину serverb как пользователь student, а затем используйте команду sudo. Пароль для пользователя student — student.
sudo
В реестре образов контейнеров по адресу registry.lab.example.com хранится образ rhel8/mariadb-103 с несколькими тегами. На serverb от имени пользователя podsvc отобразите эти теги и обратите внимание на тег с наименьшим номером версии. Вы будете использовать этот тег образа для запуска контейнера позже в этом упражнении.
registry.lab.example.com
rhel8/mariadb-103
Пароль для пользователя podsvc ― redhat. Для входа в реестр registry.lab.example.com используйте учетную запись admin с паролем redhat321.
redhat
admin
redhat321
На машине serverb от имени пользователя podsvc создайте каталог /home/podsvc/db_data. Подготовьте каталог, чтобы у контейнеров были разрешения на чтение и запись. Вы будете использовать этот каталог для постоянного хранилища.
/home/podsvc/db_data
На машине serverb от имени пользователя podsvc создайте отсоединенный контейнер MariaDB с именем inventorydb. Используйте образ rhel8/mariadb-103 из реестра registry.lab.example.com, указав тег с наименьшим номером версии для этого образа, который был найден на предыдущем шаге. Сопоставьте порт 3306 контейнера с портом 13306 хоста. Смонтируйте каталог /home/podsvc/db_data на хосте как /var/lib/mysql/data в контейнере. Объявите следующие значения переменных:
inventorydb
/var/lib/mysql/data
MYSQL_USER
operator1
MYSQL_PASSWORD
MYSQL_DATABASE
inventory
MYSQL_ROOT_PASSWORD
Вы можете скопировать и вставить эти параметры из файла /home/podsvc/containers-review/variables на машине serverb.
/home/podsvc/containers-review/variables
Чтобы убедиться, что база данных MariaDB запущена, используйте команду mysql. Эту команду можно найти в сценарии /home/podsvc/containers-review/testdb.sh. Вы также можете запустить сценарий напрямую, чтобы протестировать базу данных.
mysql
/home/podsvc/containers-review/testdb.sh
На машине serverb от имени пользователя podsvc настройте systemd на автоматический запуск контейнера inventorydb вместе с веб-сервером.
Оценка
Как пользователь student на машине workstation выполните команду lab, чтобы оценить свою работу. Если будут найдены ошибки, исправьте их и повторно выполните команду.
lab
[student@workstation ~]$ lab containers-review grade
lab containers-review grade
Конец
На машине workstation запустите сценарий lab containers-services finish, чтобы закончить это упражнение.
lab containers-services finish
[student@workstation ~]$ lab containers-review finish
lab containers-review finish
Лабораторная работа завершена.